/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ControladoresUI;

import Entidades.Carrera;
import Entidades.Curso;
import Entidades.Tipocurso;
import Entidades.Usuario;
import Ingresos.ICurso;
import ManagersUI.CursosInicioManager;
import Modelos.CursoModel;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javax.swing.JOptionPane;

/**
 *

 */
public class CursosInicioController {
    Usuario usuario; 
    CursosInicioManager cursosInicioManager;
    @FXML private TextField txtBuscar;
   
       @FXML private TableView<Curso> tblCursos;
    @FXML private TableColumn<Curso, String> nombreColumna;
    @FXML private TableColumn<Curso, Integer> creditosPracticosColumna;
    @FXML private TableColumn<Curso, Integer> creditosTeoricosColumna;
     @FXML private TableColumn<Curso, Integer> periodosColumna;
     //@FXML private TableColumn<Carrera, Carrera> seccionpracticaColumna;
    //@FXML private TableColumn<Curso, Boolean> extraordinarioColumna;
    
    public void initialize() {}
  
    public void initManager(final CursosInicioManager cursosInicioManager,Usuario usuario) {
        this.cursosInicioManager = cursosInicioManager;
        this.usuario = usuario;
        cargarTabla();

    } 
    
    public void cargarTabla(){
       CursoModel usuariosModel = new CursoModel(null); 
        tblCursos.setItems(usuariosModel.getPersonData());       
        nombreColumna.setCellValueFactory(new PropertyValueFactory<Curso, String>("nombre"));
         creditosPracticosColumna.setCellValueFactory(new PropertyValueFactory<Curso, Integer>("creditospracticos"));
          creditosTeoricosColumna.setCellValueFactory(new PropertyValueFactory<Curso, Integer>("creditosteoricos"));
        periodosColumna.setCellValueFactory(new PropertyValueFactory<Curso, Integer>("periodosSemanales"));
     //    seccionpracticaColumna.setCellValueFactory(new PropertyValueFactory<Curso, Boolean>("seccionPractica"));
 //        extraordinarioColumna.setCellValueFactory(new PropertyValueFactory<Curso, Boolean>("extraordinario"));
        // this.cmbCarrera.setValue(this);
        
    }
    @FXML
    private void modificarCurso(ActionEvent event){
        Curso registro = tblCursos.getSelectionModel().getSelectedItem();
        if(registro == null){
            cursosInicioManager.showPnlCursoInicio(usuario);
        }
        else{
            cursosInicioManager.showPnlCursoModificar(registro);
        }        
    }
    @FXML
    private void registrarCurso(ActionEvent event){
        cursosInicioManager.showPnlCursoRegistro();
    }
  
    @FXML
    private void BorrarCurso(ActionEvent event){
       Curso registro = tblCursos.getSelectionModel().getSelectedItem();
        if(registro == null){
            JOptionPane.showMessageDialog( null, "Debe seleccionar un dato","Mensaje", JOptionPane.INFORMATION_MESSAGE );
            cursosInicioManager.showPnlCursoInicio(usuario);            
        }
        else{
            int confirmado = JOptionPane.showConfirmDialog(   null,  "Desea realmente eliminarlo" );
            if (JOptionPane.OK_OPTION == confirmado){
                registro.setAnulado(Boolean.TRUE);
                ICurso nuevo = new ICurso();
                nuevo.modificarId(registro);
                cursosInicioManager.showPnlCursoInicio(usuario);
            }                        
        }
    }
}
